package com.zhousb.deviceManager.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zhousb.deviceManager.model.bo.ExportCheckedBo;
import com.zhousb.deviceManager.model.bo.OrderBO;
import com.zhousb.deviceManager.model.so.OrderSo;
import com.zhousb.deviceManager.model.vo.OrderLogVo;
import jakarta.servlet.http.HttpServletResponse;

import java.io.IOException;
import java.util.List;

public interface OrderService {

    IPage page(Page page, OrderSo so);
    boolean create(OrderBO bo);
    boolean update(OrderBO bo);
    boolean cancel(String orderId);
    boolean lock(String orderId);
    boolean unlock(String orderId);
    boolean deliver(String orderId);
    boolean unDeliver(String orderId);
    List<Long> getAllCreateOrderId();
    void exportCheckedOrder(ExportCheckedBo bo, HttpServletResponse response) throws IOException;
    List<OrderLogVo> logByProduct(String productId, String orderStatus, String startTime, String endTime);
    void exportLogByProduct(String productId, String orderStatus, String startTime, String endTime,HttpServletResponse response) throws IOException;
}
